#	@(#)Makefile	5.17 (Berkeley) 5/11/90

srcdir = .

prefix 	= /usr/local

.SUFFIXES : .m

program_prefix 	=
exec_prefix 	= $(prefix)
program_transform_name =
bindir 	= $(exec_prefix)/bin
libdir 	= $(exec_prefix)/lib
tooldir = $(libdir)
mandir 	= $(prefix)/man
man1dir = $(mandir)/man1

infodir	= $(prefix)/info
datadir = $(prefix)/lib

INSTALL = `cd $(srcdir); pwd`/../install.sh -c
INSTALL_PROGRAM = $(INSTALL)
INSTALL_DATA = $(INSTALL)
INSTALL_XFORM = $(INSTALL) -t='$(program_transform_name)'
INSTALL_XFORM1 = $(INSTALL_XFORM) -b=.1
MAKEINFO	= makeinfo
TEX		= tex
TEXINDEX	= texindex

# this is the directory we look in to find Texinfo
texidir		= $(srcdir)/../texinfo

#### host and target dependent Makefile fragments come in here.
###

PROG=	gprof
SRCS=	gprof.c arcs.c dfn.c lookup.c $(MY_MACHINE).c hertz.c \
	printgprof.c printlist.c
LIBS = ../bfd/libbfd.a ../libiberty/libiberty.a

OBJS=	gprof.o arcs.o dfn.o lookup.o $(MY_MACHINE).o hertz.o \
	printgprof.o printlist.o \
	flat_bl.o bsd_callg_bl.o fsf_callg_bl.o

# Files that can be generated, but should be included in distribution.
DISTSTUFF = flat_bl.c bsd_callg_bl.c fsf_callg_bl.c

CFLAGS=-g
LDFLAGS=
.c.o:
	$(CC) -c $(CFLAGS) -I. -I$(srcdir) -I../bfd -I$(srcdir)/../include -I$(srcdir)/../bfd -DMACHINE_H=\"$(MY_MACHINE).h\" $(TCFLAGS) $(HCFLAGS) $<

all:	diststuff $(PROG)

.PHONY: check installcheck info install-info
.SUFFIXES: .m

.m.c:
	awk -f $(srcdir)/gen-c-prog.awk > ./$*.c \
	    FUNCTION=`(echo $*|sed -e 's/_bl//')`_blurb \
	    FILE=$*.m $(srcdir)/$*.m

diststuff: $(DISTSTUFF)

gprof.info: gprof.texi
	$(MAKEINFO) -o gprof.info $(srcdir)/gprof.texi

gprof.dvi: gprof.texi
	TEXINPUTS=${TEXIDIR}:$(srcdir):$$TEXINPUTS $(TEX) $(srcdir)/gprof.texi
	$(TEXINDEX) gprof.??
	TEXINPUTS=${TEXIDIR}:$(srcdir):$$TEXINPUTS $(TEX) $(srcdir)/gprof.texi

info: gprof.info

dvi: gprof.dvi

check:
installcheck:

install-info: gprof.info
	if [ -r gprof.info ]; then \
	  dir=. ; \
	else \
	  dir=$(srcdir) ; \
	fi ; \
	for i in `cd $$dir; echo gprof.info*` ; do \
		$(INSTALL_DATA) $$dir/$$i $(infodir)/$$i ; \
	done

install: 
	$(INSTALL_XFORM) gprof $(bindir)/gprof
	$(INSTALL_XFORM1) $(srcdir)/gprof.1 $(man1dir)/gprof.1
	-n=`t='$(program_transform_name)'; echo gprof | sed -e "s/brokensed/brokensed/" $$t`; \
	  rm -f $(tooldir)/bin/gprof; \
	  ln $(bindir)/$$n $(tooldir)/bin/gprof \
	   || $(INSTALL_PROGRAM) gprof $(tooldir)/bin/gprof; 


gprof:	$(OBJS) $(LIBS)
	$(CC) -o $(PROG) $(LDFLAGS) $(OBJS) $(LIBS)

mostlyclean:
	-rm -f *.o core gprof nohup.out gprof.info* \
	gprof.cps  gprof.fns  gprof.log  gprof.ps   gprof.tps\
	gprof.aux  gprof.dvi  gprof.ky   gprof.pg   gprof.toc  gprof.vr\
	gprof.cp   gprof.fn   gprof.kys  gprof.pgs  gprof.tp   gprof.vrs
clean: mostlyclean
	-rm -f gprof
distclean: clean
	-rm -f config.status Makefile
realclean: distclean
	-rm -f $(DISTSTUFF)

Makefile : Makefile.in
	sh config.status


# These get around a bug in Sun Make in SunOS 4.1.1 and Solaris 2
gprof.o: gprof.c
arcs.o: arcs.c
dfn.o: dfn.c
lookup.o: lookup.c
$(MY_MACHINE).o: $(MY_MACHINE).c
hertz.o: hertz.c
printgprof.o: printgprof.c
printlist.o: printlist.c
flat_bl.o: flat_bl.c
bsd_callg_bl.o: bsd_callg_bl.c
fsf_callg_bl.o: fsf_callg_bl.c
